تخصيص تجربة المستخدم للعملاء المعروفين

استخدِم إحدى وحدات عمل Shared Storage لتحديد العملاء المعروفين.

Shared Storage API هي اقتراح من "مبادرة حماية الخصوصية" لمساحة تخزين عامة على مستوى المواقع الإلكترونية، وهي تتيح العديد من حالات الاستخدام المحتملة. ومن الأمثلة على ذلك تحديد العملاء المعروفين، وهو متاح للاختبار في الإصدار 104.0.5086.0 من Chrome والإصدارات الأحدث.

يمكنك تخزين ما إذا كان المستخدم قد سجّل على موقعك الإلكتروني في مساحة التخزين المشتركة، ثم عرض عنصر منفصل استنادًا إلى ما إذا كانت حالة المستخدم المخزّنة (هل هو عميل "معروف") أم لا.

ضبط العملاء المعروفين

لتجربة تحديد العملاء المعروفين في Shared Storage API، تأكَّد من استخدام الإصدار 104.0.5086.0 من Chrome أو إصدار أحدث. فعِّل جميع واجهات برمجة التطبيقات "للخصوصية في عرض الإعلانات" ضمن chrome://settings/adPrivacy.

يمكنك أيضًا تفعيل ميزة "مساحة التخزين المشتركة" باستخدام العلامة --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames في سطر الأوامر.

تجربة عيّنات الرموز البرمجية

قد تحتاج إلى عرض عنصر مختلف استنادًا إلى ما إذا كان المستخدم قد ظهر على موقع إلكتروني مختلف. على سبيل المثال، قد يريد مقدّم خدمة الدفع عرض زر "تسجيل" أو "شراء الآن" استنادًا إلى ما إذا كان المستخدم قد سجّل على موقع مقدّم خدمة الدفع الإلكتروني. يمكن استخدام مساحة التخزين المشتركة لضبط حالة المستخدم وتخصيص تجربته استنادًا إلى هذه الحالة.

في هذا المثال:

  • تم تضمين known-customer.js في إطار. يحدِّد هذا النص البرمجي خيارات الزر الذي يجب عرضه على موقع إلكتروني، سواء كان "تسجيل" أو "شراء الآن".
  • known-customer-worklet.js هي وحدات التخزين السحابي المشترَكة التي تحدِّد ما إذا كان المستخدم معروفًا. إذا كان المستخدم معروفًا، يتم عرض المعلومات. إذا كان المستخدم غير معروف، يتم عرض هذه المعلومات لعرض الزر "تسجيل" ويتم وضع علامة على المستخدم بأنّه معروف في المستقبل.

known-customer.js

// The first URL for the "register" button is rendered for unknown users.
const BUTTON_URLS = [
  { url: `https://${advertiserUrl}/ads/register-button.html` },
  { url: `https://${advertiserUrl}/ads/buy-now-button.html` },
];

async function injectButton() {
  // Load the worklet module
  await window.sharedStorage.worklet.addModule('known-customer-worklet.js');

  // Set the initial status to unknown ('0' is unknown and '1' is known)
  window.sharedStorage.set('known-customer', 0, {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation to choose the button based on the user status
  const fencedFrameConfig = await window.sharedStorage.selectURL('known-customer', BUTTON_URLS, {
    resolveToConfig: true
  });

  // Render the opaque URL into a fenced frame
  document.getElementById('button-slot').src = fencedFrameConfig;
}

injectButton();

known-customer-worklet.js

class SelectURLOperation {
  async run(urls) {
    const knownCustomer = await sharedStorage.get('known-customer');

    // '0' is unknown and '1' is known
    return parseInt(knownCustomer);
  }
}

register('known-customer', SelectURLOperation);

حالات الاستخدام

يمكنك العثور في هذا القسم على جميع حالات الاستخدام المتاحة لواجهة برمجة التطبيقات Select URL API. سنواصل إضافة أمثلة عندما نتلقّى ملاحظات ونرصد حالات اختبار جديدة.

  • تبديل تصميمات الإعلانات: يمكنك تخزين البيانات، مثل رقم تعريف تصميم الإعلان وتفاعل المستخدِم، لتحديد تصميم الإعلان الذي يراه المستخدِمون على المواقع الإلكترونية المختلفة.
  • اختيار تصميمات الإعلانات حسب معدّل التكرار: استخدِم بيانات عدد المشاهدات لتحديد تصميمات الإعلانات التي يراها المستخدِمون على المواقع الإلكترونية المختلفة.
  • إجراء اختبار أ/ب: يمكنك تعيين مستخدم إلى مجموعة تجريبية، ثم تخزين هذه المجموعة في "مساحة التخزين المشتركة" للوصول إليها على مستوى الموقع الإلكتروني.
  • تخصيص التجربة للعملاء المعروفين: يمكنك مشاركة محتوى مخصّص وطلبات لإجراء استنادًا إلى حالة تسجيل المستخدم أو حالات المستخدم الأخرى.

التفاعل مع الملاحظات ومشاركتها

يُرجى العلم أنّ اقتراح Select URL API قيد المناقشة والتطوير ويخضَع للتغيير.

يسرّنا معرفة رأيك في Select URL API.

الاطّلاع على آخر الأخبار

  • القائمة البريدية: يمكنك الاشتراك في قائمتنا البريدية للحصول على آخر الأخبار والإشعارات المتعلّقة بواجهتَي برمجة التطبيقات Select URL وShared Storage.

هل أنت بحاجة إلى مساعدة؟